using System.Collections.Generic;
using SQLServices.RunnableItems;

namespace SQLRunnerLib.RunnableItems
{
    /// <summary>
    /// ProjectFolder is a runnable item that normally is not executed and it is used to
    /// store a list of scripts to executed, as well, it can store other folders as children
    /// </summary>
    public class ProjectFolder:ProjectItem
    {
        
        private readonly List<SQLServices.RunnableItems.IProjectItem> _children; 

        public ProjectFolder(string name, SQLServices.RunnableItems.IProjectItem parent, bool ignore, IItemPath path) : base(name, parent, ignore, path)
        {
            _children = new List<SQLServices.RunnableItems.IProjectItem>();
        }

        /// <summary>
        /// Specialized property for a folder which allows the folder to store a list of 
        /// children items (folders or scripts)
        /// </summary>
        public List<SQLServices.RunnableItems.IProjectItem> Children
        {
            get { return _children; }
        }
    }
}